package cn.biplam.back.operator.ddl.md2sql.md;

import cn.biplam.common.client.DbResource;
import cn.biplam.common.tools.TOOLS;
import cn.biplam.common.wrapper.ErrorMessage;

public class MdFactory {
	
	private MdFactory(){

	}

	/**
	 * 功能  获得数据库字典实例
	 * @param schema  想获得的表所在的数据库用户。获取表信息时null则标识所有用户下的表，
	 *            获取主键、外键等其他信息时，null则取元数据源中的数据库用户
	 * @param tableName  想获得的表的名字，可为null,null则取所有表的信息
	 * @param mDbResource 元数据数据源名称
	 * @return Md
	 * @throws ErrorMessage
	 */
	public static Md getInstance(int iOid,DbResource mDbResource) throws ErrorMessage{

		Md mMd = null;
		/**数据库类型*/
		int iDbType = TOOLS.stringToInt(mDbResource.getDbtype());

		switch (iDbType){
		case 1 :
			mMd = new MdOracle(iOid,mDbResource);
		default :
			mMd = new MdOracle(iOid,mDbResource);
		}

		return mMd;
	}
}
